import { ContainerHost, Container } from './Container';
import { AppSetting } from "./AppSetting";
import { HelperTool } from './Services/Common';
import { DataService } from './Services/DataService';
import { ViewerService } from './Services/ViewerService';
import { ModelManService } from './Services/ModelManService';
import { GroupManService } from "./Services/GroupManService";
import { MarkupManService } from "./Services/MarkupManService";
import { ViewPointManService } from "./Services/ViewPointManService";
import { SettingService } from "./Services/SettingService";
import { ProjectModule } from './Modules/ProjectModule';
class AppService {
    async LoadFile(fileName: string) {
        this.DataService.Data = await HelperTool.httpGet(fileName);
        await this.ModelManService.updateViewer();
        await this.SettingService.updateViewer();
        await this.GroupManService.updateViewer();
        await this.MarkupManService.updateViewer();
    }
    ViewerService = Container.defineProperty(ViewerService);
    DataService = Container.defineProperty(DataService);
    ModelManService = Container.defineProperty(ModelManService);
    GroupManService = Container.defineProperty(GroupManService);
    MarkupManService = Container.defineProperty(MarkupManService);
    ViewManService = Container.defineProperty(ViewPointManService);
    SettingService = Container.defineProperty(SettingService);
}
let NBYC = {
    ContainerHost,
    AppSetting,
    AppService,
    HelperTool,
    Modules: {
        ProjectModule
    },
    Services: {
        DataService,
        ViewerService,
        ModelManService,
        GroupManService,
        MarkupManService,
        ViewPointManService,
        SettingService,
    }
};
HelperTool.NameSpace("NBYC", NBYC);
